Return to start page
Core/Maths/Library Handle.j
1 library ALibraryCoreMathsHandle requires ALibraryCoreMathsPoint, ALibraryCoreMathsRect
2
3 //! textmacro ALibraryCoreMathsHandleHandleMacro takes TYPE, TYPENAME
4 function Get$TYPENAME$Z takes $TYPE$ $TYPENAME$ returns real
5 return GetTerrainZ(Get$TYPENAME$X($TYPENAME$), Get$TYPENAME$Y($TYPENAME$))
6 endfunction
7
8 /// Returns the distance between two $TYPENAME$s.
9 /// Da es die Natives "Get$TYPENAME$X" und "Get$TYPENAME$Y" gibt, dürfte es schneller sein als erst Locations der $TYPENAME$s zu erzeugen und diese zu vergleichen.
10 /// Achtung: Beim Ignorieren des Z-Wertes "z0" und "z1" 0 bergeben.
11 function GetDistanceBetween$TYPENAME$s takes $TYPE$ $TYPENAME$0, $TYPE$ $TYPENAME$1, real z0, real z1 returns real
12 return GetDistanceBetweenPoints(Get$TYPENAME$X($TYPENAME$0), Get$TYPENAME$Y($TYPENAME$0), z0, Get$TYPENAME$X($TYPENAME$1), Get$TYPENAME$Y($TYPENAME$1), z1)
13 endfunction
14
15 /// Returns the centre location between two $TYPENAME$s.
16 /// Achtung: Z muss ignoriert werden, da sich kein Punkt mit einem Z-Wert erstellen lässt.
17 function GetCentreBetween$TYPENAME$s takes $TYPE$ $TYPENAME$0, $TYPE$ $TYPENAME$1 returns location
18 return GetCentreBetweenPoints(Get$TYPENAME$X($TYPENAME$0), Get$TYPENAME$Y($TYPENAME$0), Get$TYPENAME$X($TYPENAME$1), Get$TYPENAME$Y($TYPENAME$1))
19 endfunction
20
21 function Get$TYPENAME$PolarProjectionX takes $TYPE$ $TYPENAME$, real angle, real distance returns real
22 return GetPolarProjectionX(Get$TYPENAME$X($TYPENAME$), angle, distance)
23 endfunction
24
25 function Get$TYPENAME$PolarProjectionY takes $TYPE$ $TYPENAME$, real angle, real distance returns real
26 return GetPolarProjectionY(Get$TYPENAME$Y($TYPENAME$), angle, distance)
27 endfunction
28
29 /// Returns the angle between two $TYPENAME$s.
30 /// Da es die Natives "Get$TYPENAME$X" und "Get$TYPENAME$Y" gibt, dürfte es schneller sein als erst Locations der $TYPENAME$s zu erzeugen und diese zu vergleichen.
31 function GetAngleBetween$TYPENAME$s takes $TYPE$ $TYPENAME$0, $TYPE$ $TYPENAME$1 returns real
32 return GetAngleBetweenPoints(Get$TYPENAME$X($TYPENAME$0), Get$TYPENAME$Y($TYPENAME$0), Get$TYPENAME$X($TYPENAME$1), Get$TYPENAME$Y($TYPENAME$1))
33 endfunction
34
35 function RectFrom$TYPENAME$Size takes $TYPE$ $TYPENAME$, real width, real height returns rect
36 return RectFromPointSize(Get$TYPENAME$X($TYPENAME$), Get$TYPENAME$Y($TYPENAME$), width, height)
37 endfunction
38 //! endtextmacro
39
40 //! runtextmacro ALibraryCoreMathsHandleHandleMacro("widget", "Widget")
41 //! runtextmacro ALibraryCoreMathsHandleHandleMacro("unit", "Unit")
42 //! runtextmacro ALibraryCoreMathsHandleHandleMacro("destructable", "Destructable")
43 //! runtextmacro ALibraryCoreMathsHandleHandleMacro("item", "Item")
44
45 endlibrary